package com.wc.AlgoOJ_homework.ALgoOJ_BL5.C_质因数个数;

import java.util.Scanner;

/**
 * @Author congge
 * @Date 2024/4/10 19:21
 * @description http://43.138.190.70:8888/p/LQ1325?tid=66120c2c07c5c018a5dcf262
 */
public class Main {
    static int N = (int) 1e8 + 10;
    static boolean[] st = new boolean[N];
    static int[] primes = new int[N / 10];
    static int idx = 0;
    static long n;

    static void ola(int n) {
        st[0] = st[1] = true;
        for (int i = 2; i <= n; i++) {
            if (!st[i]) primes[++idx] = i;
            for (int j = 1; primes[j] <= n / i; j++) {
                st[primes[j] * i] = true;
                if (i % primes[j] == 0) break;
            }
        }
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        ola(N - 1);
        n = sc.nextLong();
        int res = 0;
        for (int i = 1; primes[i] <= n / primes[i]; i++) {
            if (n % primes[i] == 0) {
                res++;
                while (n % primes[i] == 0) n /= primes[i];
            }
        }
        if (n > 1) res++;
        System.out.println(res);
    }
}
